package com.ce.pms.customer.dao;

import java.util.List;

import com.ce.pms.base.dao.IPmsBaseDao;
import com.ce.pms.common.model.SysrefcodeDO;
import com.ce.pms.customer.model.ClientDO;
import com.ce.pms.customer.model.ParticipantDO;

public interface IClientDao extends IPmsBaseDao<ClientDO>{

	/**
	 *
	 * 功能描述: 根据参与人id和客户类型CODE得到对应的客户实体
	 *
	 * @author 付湘辉
	 * Created on:2008-6-11
	 *
	 * 修改原因：
	 * @param participantDO
	 * @param clientType
	 * @return ClientDO 返回结果
	 */
	public ClientDO queryClientByParticipantAndCTypeCode(Long participantId, String clientTypeCode);
	public ClientDO addClient(ClientDO clientDO);

	/**
	 *
	 * 功能描述: 根据参与人和客户类型得到对应的客户实体
	 *
	 * @author 付湘辉
	 * Created on:2008-6-11
	 *
	 * 修改原因：
	 * @param participantDO
	 * @param clientType
	 * @return ClientDO 返回结果
	 */
	public ClientDO queryClientByParticipantAndClientType(ParticipantDO participantDO, SysrefcodeDO clientType);

	/**
	 *
	 * 功能描述: 根据参与人id和客户类型id得到对应的客户实体
	 *
	 * @author 付湘辉
	 * Created on:2008-6-11
	 *
	 * 修改原因：
	 * @param participantDO
	 * @param clientType
	 * @return ClientDO 返回结果
	 */
	public ClientDO queryClientByParticipantAndClientType(Long participantId, Long clientTypeId);

	/**
	 * 通据客户id查找房屋id列表
	 * @param clientId
	 * @return
	 */
	public List<Long> getHouseIdsByClientId(Long clientId);
}
